package com.haina.vote.service;

import com.haina.vote.entity.IpInfo;
import com.haina.vote.entity.Vote;
import com.haina.vote.entity.VoteItem;

import java.util.List;

public interface IVoteService {
    //查询全部投票
    public List<Vote>findAllVote(Integer page,Integer pageSize);
    //新建投票
    public void addVote(Vote vote);
    //删除投票
    public void deleteVote(Integer id);
    //查询全部选项
    public List<VoteItem>findAllItem(Integer page,Integer pageSize);
    //新建选项
    public void addItem(VoteItem voteItem);
    //修改问卷选项
    public void updateItem(VoteItem voteItem);
    //查询投票信息并生成对应类型的页面
    public List<VoteItem> findVoteInfo(Integer id);
    //查询不分页的投票数据用于跳转到选项添加页面并携带投票名称信息
    public List<Vote> findvote();
    //通过ip地址进行查询
    public IpInfo findIpInfo(String ip,Integer vote_id);
    //如果没有查询到ip将添加ip记录
    public void addIPInfo(IpInfo ipInfo1);
    //通过ip的id更新ip访问的次数
    public void updateIpInfo(Integer req_num,Integer ip_id);
    //查询选项的总票数
    public Integer findItemTimes(Integer item_id);
    //修改该选项的总票数
    public void updateVoteItemTimes(Integer item_id, Integer times);
    //删除该选项
    public void deleteItem(Integer item_id);
    //查询选项的详情
    public VoteItem findItemById(Integer item_id);
    //通过id查询投票
    public Vote findVoteById(Integer id);
    //修改投票
    public void updateVote(Vote vote);
}
